package cn.wjssl.domain.credit.service;

import cn.wjssl.domain.credit.model.entity.CreditAccountEntity;
import cn.wjssl.domain.credit.model.entity.TradeEntity;

/**
 * 积分调额服务
 */
public interface ICreditAdjustService {

    /**
     * 创建积分调额订单
     * 根据 tradeEntity中的amount的正负, 对积分账户进行增加或者扣减
     * 如果是支付订单, 那么就是扣减积分
     * 如果是签到返利, 那么就是增加积分
     * 发送mq消息, 将支付订单(sku单)的状态变为completed
     * @param tradeEntity 交易实体对象
     * @return 单号
     */
    String createCreditOrder(TradeEntity tradeEntity);

    /**
     * 根据 userId  查询积分账户余额
     * @param userId
     * @return
     */
    CreditAccountEntity queryUserCreditAccount(String userId);
}
